package com.lyy.system.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lyy.system.entity.Product;

import javax.xml.crypto.Data;

public interface ProductService extends IService<Product> {

    /**
     * 添加物资资料
     * @param product
     */
    void addProduct(Product product);

    /**
     * 物资资料列表查询
     * @param page
     * @param wrapper
     * @return
     */
    IPage<Product> queryProuctList(Page<Product> page, QueryWrapper<Product> wrapper);

    /**
     * 物资资料删除
     * @param id
     */
    void deleteProduct(Long id);

    /**
     * 物资资料详情
     * @param id
     * @return
     */
    Product productDetail(Long id);

    /**
     * 修改物资资料
     * @param product
     */
    void updateProduct(Product product);

    /**
     * 移入回收站
     * @param id
     */
    void remove(Long id);

    /**
     * 从回收站恢复
     * @param id
     */
    void back(Long id);

    /**
     * 物资添加审核
     * @param id
     */
    void publish(Long id);
}
